Error correction encoding is employed in a variety of settings to improve the reliability of data. At a basic level, error correction encoding introduces redundancy into a bit stream to increase the probability that the information in the bit stream is transferred successfully from one end of a channel to another. For example, error correction encoding is used when data is written to disk, communicated wirelessly, or otherwise transferred over a noisy channel that introduces errors into the data.
While typically employed in the lower layers of a communications stack, some applications employ error correction to improve the reliability of their data. Voice and video applications may encode their media streams, for example, to ensure that their conversations, video clips, or other such content reach their destination intact. An encoded media stream will have a level of redundancy that may be expressed in terms of a code rate. For instance, a one-half code rate would indicate that half of the bits in an encoded media stream are redundant relative to the original bits in the stream.
Even when an application protects its media stream with error correction encoding, the media stream may still be at risk due to the fundamental characteristics of the channel being used to communicate the data. This may especially be the case when relying upon a single wireless link between a client and a wider network for communications that are sensitive to delay.
Overview
Technology is disclosed herein that partitions an encoded media stream into multiple sub-streams having different code rates relative to each other. The sub-streams may then be transmitted to different wireless access points. A change in a monitored performance of at least one of the wireless access points may drive a modification to the partitioning of the media stream such that the code rates change relative to each other. In this manner, the media stream may be more reliably communicated to a receiving end, even as the performance of a given wireless access point or points varies.
This Overview is provided to introduce a selection of concepts in a simplified form that are further described below in the Technical Disclosure. It may be understood that this Overview is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.